﻿//=======================================================================================
//
// Copyright (C) 2010-2011 Asia-Peak Technologies, Inc. All Rights Reserved.
// 
// All the code, text, graphics, media, design, programs and other works are
// protected by copyright law. Unauthorized reproduction or redistribution of them, 
// or any portion of them, are forbidden.
// 
//=======================================================================================
/****************************************************************************************
 * 
 * 文件说明：
 * 
 * 作者：陈家龙
 * 创始时间：2011/6/16 10:46:06
 * 创建说明：
 * 
 * 修改人:
 * 修改时间：
 * 修改说明：
 * 
 * 修改人：
 * 修改时间：
 * 修改说明：
 *    
****************************************************************************************/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;

namespace System
{
    public static class ClassExpand
    {
        /// <summary>
        /// 显示到小数点四位
        /// </summary>
        /// <param name="num"></param>
        /// <returns></returns>
        public static string ToStringFor4(this decimal num)
        {
            return num.ToString("0.00");
        }

        /// <summary>
        /// 显示到小数点四位
        /// </summary>
        /// <param name="num">decimal对象</param>
        /// <returns></returns>
        public static string ToStringFor4(this object num)
        {
            return ((decimal)num).ToStringFor4();
        }

        /// <summary>
        /// 相对路径转绝对路径
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        public static string ToAbsoluteUrl(this string str)
        {
            return HtmlHelper.ToAbsoluteUrl(str);
        }

        #region MyRegion
        ///// <summary>
        ///// 字符串转枚举
        ///// </summary>
        ///// <typeparam name="T"></typeparam>
        ///// <param name="value"></param>
        ///// <returns></returns>
        //public static T ToEnum<T>(this string value)
        //{
        //    return (T)Enum.Parse(typeof(T), value);
        //}

        ///// <summary>
        ///// 数字转枚举
        ///// </summary>
        ///// <typeparam name="T"></typeparam>
        ///// <param name="value"></param>
        ///// <returns></returns>
        //public static T ToEnum<T>(this int value)
        //{
        //    return (T)Enum.ToObject(typeof(T), value);
        //}

        //        /// <summary>
        //        /// 字符串转十进制数
        //        /// </summary>
        //        /// <param name="str"></param>
        //        /// <returns></returns>
        //        public static Decimal ToDecimal(this string str)
        //        {
        //            decimal result;
        //            if (!decimal.TryParse(str, out result))
        //            {
        //#if DEBUG
        //                throw new FormatException(str);
        //#endif
        //            }
        //            return result;
        //        } 
        #endregion

        public static Boolean ToBoolean(this string str)
        {
            if (string.IsNullOrWhiteSpace(str))
                return false;
            if (string.Equals(str, "true", StringComparison.OrdinalIgnoreCase))
                return true;
            if (string.Equals(str, "1"))
                return true;
            return false;
        }
    }
}
